そんなときのお役に立てるようこの記事では、
VLOOKUP関数の基本少し応用的なVLOOKUP関数の使い方VLOOKUP関数でのエラーについて解説しています。
どんな会社でも使用頻度の高いVLOOKUP関数。是非マスターしておきましょう!
初心者でもわかるVLOOKUP関数の基本VLOOKUP関数とは?VLOOKUP関数とは、指定した値を検索してくれる関数です。
例えば下記の表からりんごの価格を知りたい場合、どのように目を動かしますか?
果物名を上から下に見ていって、一致したものがあれば横に目を動かしますよね。
まさにこの動きをやってくれるのがVLOOKUP関数です。
VLOOKUP関数の型VLOOKUP関数は、
=VLOOKUP(検索値,範囲,列番号,[検索方法」)
という形で使用します。
検索値とは、何について検索したいかということです。先ほどの例であれば「りんご」が検索値にあたります。
範囲とは検索対象とする表の範囲のことです。先ほどの例ですとB2~C10セルに表があったので、B2:C10が範囲となります。
列番号とは、検索対象が見つかったときに何列目の値を返すか?ということです。先ほどの例ですと「りんご」が見つかったら2列目の「¥100」を返してほしいので、「2」が列番号となります。
検索方法についてはTRUE or FALSEを指定(もしくは1か0)するのですが、FALSEを指定すると覚えておいて頂いても問題ないくらいです。
検索値に対して完全に一致しなくてもOKとするか、完全に一致した場合のみOKとするかという指定になりますが、VLOOKUP関数を使用する際、基本的に完全に一致した場合の検索を求めていると思いますので、
最後はFALSE
で問題ありません。
VLOOKUP関数の具体例では、注文表の単価の部分に価格表から価格を検索して入力したいという例で数式を作ってみます。
まずC4セルを選択し、=VLOOKUP(
という数式を作っていきます。
最初は検索値です。「りんご」が入っているB4セルを指定します。
次に範囲です。今回だと価格表が対象なので、G4~H11ですね。
数式をコピーして適用するために範囲は$マークをつけて絶対参照にするのを忘れないようにしましょう。
次に列番号です。今回、果物が見つかったら価格を返してほしいので列番号は2ですね。
最後の検索方法については先ほど説明の通り、FALSEを指定します。
りんごの単価を取得することができました!
あとは数式をコピーして他のセルにも適用しましょう。
VLOOKUP関数ちょっと応用VLOOKUP関数の基本的な使い方について解説してきましたが、少し応用的な使い方についてもご紹介したいと思います。
別シートを参照したVLOOKUP関数VLOOKUP関数は、検索する対象の表が別のシートにある場合でも問題無く使用することができます。
例えば、
Sheet1に注文表Sheet2に単価表があり、注文表の単価欄に検索した価格を入力したいという場合です。
このような場合でも通常通りVLOOKUP関数の数式を作成しますが、範囲指定のところで別シート(今回だとSheet2)を選択し指定する必要があります。
そしてSheet2を選択した状態でVLOOKUP関数の数式を完成させましょう。
Sheet2で範囲選択をした後にSheet1に切り替えてしまうと、数式に余計なものが入り分かりにくくなってしまうので注意しましょう。
別シートを参照するときのVLOOKUP関数の使い方については、下記の記事で詳しく説明しているので是非ご参考ください。
【エクセル】別シートを参照してVLOOKUP関数を実行!
VLOOKUP関数で条件に合うものを全て抽出基本的に、VLOOKUP関数で取得できる値は1つだけです。
検索値にあてはまるデータが2つ以上あっても1つしか抽出されないことは下記の例からも分かります。
複数の値を抽出したい場合、VLOOKUP関数単独ではできないので他の関数と組みあわせる工夫が必要になります。
具体的にはCOUNTIF関数と組み合わせますが、事前に連番をつける準備も必要となります。
最終的には下記のように、部署名を入れるとその部署全員が抽出される表を完成することができます。
途中の手順については下記の記事で詳しく説明しています。また、VLOOKUP関数でやろうとすると少し複雑になるため、より簡単なピボットテーブルを使う方法についても紹介しているので是非ご参考下さい。
【エクセル】VLOOKUP関数で条件に合うものをすべて抽出!
IF関数とVLOOKUP関数の組み合わせIF関数と組み合わせることで条件によって抽出対象の表を分けたり、特定の条件に当てはまるものだけを抽出することができます。
例えば、一般の人と管理職の人で抽出したい表を分けたいような場合です。
E3セルに入力する数式の結論としては、下記の通りです。
IF関数で場合分けをしたところに、VLOOKUP関数を入れています。数式をコピーして適用すると下記の通り、それぞれの表から適切に値を抽出できるようになります。
また、VLOOKUP関数で抽出した値を基にIF関数で分岐したい場合もあります。
下記のような場合ですね。
このような場合は、IF関数の最初の部分にVLOOKUP関数を入れることで実現可能です。
IF関数とVLOOKUP関数の組み合わせについては下記の記事で詳しく解説しています。
【エクセル】IF関数とVLOOKUP関数、簡単組み合わせ!
VLOOKUP関数でのエラー対処方法VLOOKUP関数を使用する際に発生する主なエラーとしては下記のようなものがあります。
#N/Aエラー#VALUE!エラー#NAME?エラー#REF!エラー
エラーがでると焦ってしまいますが、それぞれの意味を理解しておくことで適切な対処を行うことができます。
一概には言えないところもあるのですが、ざっくりとまとめると下記の通りです。
エラー名意味対策#N/Aエラー適切な値が無い検索対象の表に検索値を追加する#VALUE!エラー数式に誤りがある数式を正しく修正する#NAME?エラー関数名が間違っている関数のスペルを見直す#REF!エラー無効なセルを参照している参照を正しく修正する1つ1つの詳しい解説についての記事は、下記の記事を参考にして下さい。
【エクセル】VLOOKUP関数で発生するエラー対処方法
まとめ